package com.riant.test6;

import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
import com.google.common.cache.CacheLoader;
import com.google.common.cache.LoadingCache;

import java.util.concurrent.ExecutionException;
import java.util.concurrent.TimeUnit;

public class Demo1 {
//    public static void main(String[] args) throws ExecutionException {
//        testLoadingCache();
//    }
//    public static void testCache(){
//        Cache<String, String> cache = CacheBuilder.newBuilder().build();
//        cache.put("key","value");
//        String value=cache.getIfPresent("key");
//        System.out.println(value);
//    }
//
//    public static void testCache1(){
//        // 通过CacheBuilder构建一个缓存实例
//        Cache<String, String> cache = CacheBuilder.newBuilder()
//                .maximumSize(100)// 设置缓存的最大容量
//                .expireAfterWrite(1, TimeUnit.MINUTES)// 设置缓存在写入一分钟后失效
//                .concurrencyLevel(10)// 设置并发级别为10
//                .recordStats()// 开启缓存统计
//                .build();
//        cache.put("key","value");
//        String value=cache.getIfPresent("key");
//        System.out.println(value);
//    }
//
//
//    public static void testLoadingCache() throws ExecutionException {
//        LoadingCache<Object,Object> loadingCache=CacheBuilder.newBuilder().build(new CacheLoader<Object, Object>() {
//            @Override
//            public Object load(Object key) throws Exception {
//                return null;
//            }
//        });
//
//        loadingCache.put("key","value");
//        String value= (String) loadingCache.get("key");
//        System.out.println(value);
//
//    }
}
